package com.lancoo.cvas.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * 课时方案规则
 *
 * @author liufeng
 * @email 1037383243@qq.com
 * @date 2023-12-04 11:54:00
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("rule_week_day")
@EqualsAndHashCode(of = {"taskId", "weekDayCode"})
@ApiModel(value = "RuleWeekDay对象", description = "课时方案规则")
public class RuleWeekDay implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 课时方案规则id
     */
    @ApiModelProperty("课时方案规则id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 任务id
     */
    @ApiModelProperty("任务id")
    private Integer taskId;
    /**
     * 01~14，分别代表周一至第二周周日
     */
    @ApiModelProperty("01~14，分别代表周一至第二周周日")
    private String weekDayCode;
    /**
     * 课时方案id
     */
    @ApiModelProperty("课时方案id")
    private String baseSchemeId;
    /**
     * 课时方案名称
     */
    @ApiModelProperty("课时方案名称")
    private String baseSchemeName;
    /**
     * 学校id
     */
    @ApiModelProperty("学校id")
    private String schoolId;
    /**
     * 校区id
     */
    @ApiModelProperty("校区id")
    private String campusId;
    /**
     * 学期
     */
    @ApiModelProperty("学期")
    private String term;
    /**
     * 删除标识：
     * 0：未删除
     * 1：删除
     */
    @ApiModelProperty("删除标识")
    private Integer deleted;
    /**
     *
     */
    private String reserve;


    @TableField(exist = false)
    @ApiModelProperty("节次信息")
    private List<PeriodScheme> periodSchemes;

}
